<?php
require_once 'common.php';    

function db_connect()
{
    $host= '172.18.190.144'; // '172.18.190.144'; localhost
    $user = 'dba';
    $passwd = '1234';
    $db = 'dbwechat';
    
    $result = new mysqli('172.18.190.144', $user, $passwd, $db);
        
    if(!$result)
    {
        //return false;
        throw new Exception("Could not establish connection to the database.");
    }   
    
    
    return $result;
}
   
/**
 * 将从数据库中读取到的记录转化为数组；
 * @param unknown $result
 * @param unknown $resulttype 数组各项的形式，各项可以为关联数组、普通数组、两者都有，可选值：MYSQLI_ASSOC, MYSQLI_NUM, or MYSQLI_BOTH； 来自mysqli_result::fetch_all([int $resulttype = MYSQLI_NUM])函数的参数 
 * @return NULL|unknown
 */
function dbresult_to_array($result, $resulttype)
{
    if(!$result)
    {
        return [];
    }
    else 
    {
        $arr = $result->fetch_all($resulttype); 

        return $arr;  
    }
    
}

function dbresult_to_rows_array($result)
{
    return dbresult_to_array($result, MYSQLI_NUM);
}

function dbresult_to_objects_array($result)
{
    return dbresult_to_array($result, MYSQLI_ASSOC);
}

//function dbresult_to_array($result, $resulttype)

/**
 * 判断数据库 mysqli::query()结果是否为成功执行
 * @param unknown $result  mysqli_result对象
 * @throws Exception 在当$result===false时，表示执行失败
 * @return boolean 表示执行成功（true或者mysqli_result对象）
 */
function db_is_result_succeed($result, $dbcon)
{
    if($result === false)
    {
        throw new Exception("".WARNING_query_failed.": ".$dbcon->error);
    }
    return true;    
}


?>